Fab Academy 2019
Learn how to make ALMOST anything!

Electronics Production


 

For this week's assignment, It was required to make an in-circuit programmer. It was required to mill the board, stuff it with components and program it.

What is the FabISP?

The FabISP is an in-system programmer for AVR microcontrollers, designed for production within a FabLab. It allows you to program the microcontrollers on other boards you make.

To do this, there are 6 main steps:

1. Preparing your file.

2. Preparing your machine.

3. Mill your board.

4. Cut your board.

5. Solder components.

6. Programming the board.

Modella MDX 20
The Roland Modela MDX-20 is a small milling machine and a 2 1/2D precision scanner.This machine is mostly used for milling circuit boards, though it can also mill in other soft materials like machinable wax.
 

 

For milling circuit boards you should export you design into a black&white monocroome png. For milling out 3 dimensional molds you should export your design as .stl. The second use of this machine is scanning. It uses a thin needle to gently touch the object and calculates from this a 2 and a half dimensional model. Though slow at processing, it can create a high detailed model.

 

 

We use CNC mill for making PCB boards

 

FabTinyISp  


It is a ATtiny45 based board having high-performance, low-power Atmel 8-bit AVR RISC-based microcontroller combines 4KB ISP flash memory, 256-Byte EEPROM, 256B SRAM, 6 general purpose I/O lines, 32 general purpose working registers, one 8-bit timer/counter with compare modes, one 8-bit high speed timer/counter, USI, internal and external Interrupts, 4-channel 10-bit A/D converter, programmable watchdog timer with internal oscillator, three software selectable power saving modes, and debugWIRE for on-chip debugging.
The device achieves a throughput of 20 MIPS at 20 MHz and operates between 2.7 - 5.5 volts.I choose Brian's verson because this design doesn't have any clock circuits and additional LED's are there to indicating the status of the board while programming.

 

Schematic

 

Position Diagram

 

Milling Traces

 

Milling Traces

 

Setting-Up the PCB

 

Before we begin milling, first we have to prepare a PCB. For that attach a double sided tape to a PCB and place it on the CNC mill.

Attach a double sided tape to the back of the PCB and stick it on to the sacrifical layer.

 

An L-key is used for releasing the bit from the chuck

To set the Z-value correctly

 

Setting up the fab modules

 

open Fab Modules by typing fab on linux terminal or you can use the online version. In Fab Module Select Image(.png) as Input and Roland MDX-20 mill(rml) as ouput Process and Click make_png_rml .

 

Now Fab Module will open a new window, and here we need to image for milling by clicking load.png, and don't forget to select the mill trace (1/64) for milling and click the make.path to create path for milling.

Now set the 'X'axis and 'Y'axis First click the View button on the Modela Control panel.

Now change the bit ,For milling we use 1/64 bit.

Now set the Correct X and Y axis based on our PCB board Position. For setting Z'axis ,set the x and y then by using UP and Down button just stop the nearby the PCB and then losen the 'Bit' and tight it when it's touch the PCB , that's all we now set the Z axis.

 

so first load the Image in Fab Module and make the path after that send it to machine to cutting

 

 

Make sure to set the bit as the cut board(1/32).


Then make.path and make.rml and start process by clicking Send it

 

Final PCB

 

Soldering
Soldering was really a tough job for me.This was the first time like i am trying to understand milling and soldering.Everyone was trying to teach how to solder it properly.
I begin with making a list of the components that I am going to use.Since i have no idea about all these, i was exactly trying to follow my friends.After making the list i tried to collect the resistors etc by myself from the shelf.Everything seems to be the same i first but somehow i managed to collect the components from the shelf.
Parts

1x ATtiny45 or ATtiny85
2x 1kΩ resistors
2x 499Ω resistors
2x 49Ω resistors
2x 3.3v zener diodes
1x red LED
1x green LED
1x 100nF capacitor
1x 2x3 pin header

This is the first ever slodering in my life.

 

I took lots of time to solder each component.Everyone was trying to help me and they taught me how to solder the components without excess solder.

 

Hero Shot

Programming ISP

Now we need to upload the program code for the fabISP.I am using Linux , so first we need to install avr-gcc tool-chain, type this on terminal to install tool-chian sudo

After Installtion unzip the downloaded firmware and open terminal.

Now we can see the files , next we need to open the Makefile for ensuring it's configured for the ATTiny.i used nano to open the file Just type nano Makefile  

Now we can confirm that, it's configured for the ATTiny

We need another Progarmmer for Progarmme the ISP Progarmmer.

In terminal (at the firmware file path) type MAKE

to Genarate the hex for flashing. Now we can see some new files,that was automatically genarated make file script. Now Connect the Old ISP and connect to our new ISP. and check the new ISP was detected in Computer by Typing lsusb

Now we are ready to flash. Type, make flash to flash the firmware to new ISP.

 

Now we are successfully flashed. We need activate the fuse in order to act our ISP as a progarmmer.
For activating fuse, make fuse it will automatically , activate the fuse.

 

GROUP ASSIGNMENT

This Week we need characterize the specifications of our PCB production process i exaplined all procedure on the PCB Production section so next one is to find-out the how much resolution of 1/64 and 1/100 bit can mill and find out the difference.

 

 

First we tried it with 1/64 bit

 

 

You can see some copper part is not milled correctly,because we used offset as 4

  Now we used offset as -1 , now the path section is filled completed.

 

Now we got perfect one, there is no extra copper in this board.We can clearly see 1/64 only milled 0.20, and all other it's just passed. So next we tried it with 1/32

 

After milling

We can clearly see all this got messed up with 1/32.This images cleary shows the milling resolution of 1/64 and 1/32 bit .